<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>ECMAScript 关键字</title>
    <script>
        /*
        ECMAScript 关键字
        ECMA-262 定义了 ECMAScript 支持的一套关键字（keyword）。

        这些关键字标识了 ECMAScript 语句的开头和/或结尾。根据规定，关键字是保留的，不能用作变量名或函数名。

        下面是 ECMAScript 关键字的完整列表：

        break
        case
        catch
        continue
        default
        delete
        do
        else
        finally
        for
        function
        if
        in
        instanceof
        new
        return
        switch
        this
        throw
        try
        typeof
        var
        void
        while
        with
        */
       function testDefault(){
            var iDay = new Date().getDay()
            var sDayDesc = ""
            switch (iDay){
                case 0:
                sDayDesc = "Today it's Sunday";
                break;
                sDayDesc = "Unknow";
                default:
                break;
            }
            alert(sDayDesc);
       }

       /*
       js函数的默认参数(default parameter)
       js函数参数的默认值都是undefined， ES5里，不支持直接在形参里写默认值。
       所以，要设置默认值，就要检测参数是否为undefined，按需求赋值。
       */
      function mutiply(a,b){
          // ES5 写法如果 b 是 undefined 那么给它默认值 1
          b = typeof b !== 'undefined' ? b : 1
            // 也是一样的 
        //var c = typeof arguments[1] !== 'undefined' ? arguments[1] : 1;
          return a*b
      }
      
      // b 的默认值 1 在ES6 中使用了默认的参数 
      function es6Mutiply(a, b = 1){
          return a*b
      }



       function testDelete(){
           // 已经做了专门的修改
       }

       function testFinally(){

       }

       function testInstanceOf(){

       }

       function testThrow(){

       }

       function testTypeOf(){

       }

    </script>
</head>
<body>
    
</body>
</html>